docs(tutorials): attach to an existing ROS 2 stack#453
Conversation
How to point the gateway at a running stack you did not launch: matching RMW / domain / distro, discovery reachability, containers, web UI CORS, and a troubleshooting table. Closes #448
There was a problem hiding this comment.
Pull request overview
Adds a new Sphinx tutorial describing how to run the ros2_medkit gateway against an already-running ROS 2 system (e.g., Nav2/MoveIt/Autoware), with emphasis on matching ROS 2 environment details and handling containers/Web UI integration.
Changes:
- Adds
docs/tutorials/attach-existing-stack.rstcovering cross-process ROS 2 prerequisites, runtime discovery usage, container networking, Web UI/CORS, and troubleshooting. - Wires the new tutorial into
docs/tutorials/index.rst(toctree + “Advanced Tutorials” list).
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 5 comments.
| File | Description |
|---|---|
| docs/tutorials/index.rst | Adds the new tutorial to the tutorials toctree and advanced tutorial list. |
| docs/tutorials/attach-existing-stack.rst | New end-to-end guide for attaching the gateway to an existing ROS 2 stack, including container + Web UI notes. |
bburda
left a comment
There was a problem hiding this comment.
Approving. Two things to handle before merge:
- The open Copilot comments are valid: use the per-distro image tag (ros2_medkit-:latest) on the docker run/pull examples, and the "bundles CycloneDDS" and "enables a permissive CORS default" lines only hold once the image and Docker params changes land, so this should merge after them.
- The Copilot comment on the faults curl is a false positive: the endpoint emits x-medkit.count, not total_count (the DTO field is count and the integration test asserts count). Leave the doc as written.
The commands, endpoints, config keys and cross-references otherwise check out against the code.
- RMW wording: do not imply the stock image already bundles CycloneDDS; say the selected RMW must be installed. - Container examples: drop the no-op -p with --network host, use the distro-specific image tag, add ROS_DOMAIN_ID to both. - Web UI: point to setting cors.allowed_origins rather than asserting a permissive image default. - Verify: use .items | length for the faults count.
|
Thanks - both points handled:
|
Adds
tutorials/attach-existing-stack.rstfor the common case of pointing the gateway at a stack you did not launch (Nav2, MoveIt, Autoware).Covers: the apt/same-environment short path; the four things that must match for cross-process ROS 2 (distro, RMW,
ROS_DOMAIN_ID, discovery reachability); running the gateway against a live graph with runtime discovery; containers (--network host/ shared netns, CycloneDDS opt-in, socket-buffer note); web UI CORS; and a troubleshooting table. Wired into the tutorials toctree.Closes #448